Ensure trace-buffer size is set back to zero if trace buffers can't be allocated.
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Thu, 25 May 2006 13:37:55 +0000 (14:37 +0100)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Thu, 25 May 2006 13:37:55 +0000 (14:37 +0100)
Signed-off-by: Atsushi Sakai <sakaia@jp.fujitsu.com>
xen/common/trace.c

index dbd0f7e7a083f35a9f240b9474b4c12d19ebbda3..0cee7126d273ac702b9f376a43fe6b16c4eda091 100644 (file)
@@ -91,6 +91,7 @@ static int alloc_trace_bufs(void)
     if ( (rawbuf = alloc_xenheap_pages(order)) == NULL )
     {
         printk("Xen trace buffers: memory allocation failed\n");
+        opt_tbuf_size = 0;
         return -EINVAL;
     }
 
@@ -135,10 +136,7 @@ static int tb_set_size(int size)
 
     opt_tbuf_size = size;
     if ( alloc_trace_bufs() != 0 )
-    {
-        opt_tbuf_size = 0;
         return -EINVAL;
-    }
 
     printk("Xen trace buffers: initialized\n");
     return 0;